AUTOSAR 入门教程(10)BSWM
BSWM 模块 是 AUTOSAR 架构中的"模式指挥官",通过仲裁机制协调 ECU 各模块的工作状态,解决多模块协同问题。
核心功能:模式管理的三大支柱
BSWM 的核心能力分为三层:
- 模式仲裁:基于简单布尔表达式的规则评估
- 模式控制:仲裁后执行操作列表(可能跨多个模块)
- 执行机制:所有操作完全基于配置实现
交互网络:BSWM 的协作版图
BSWM 如同交通枢纽般连接着 AUTOSAR 各核心模块,涉及以下几个方面:
-
通信相关
- 通过 RTE 接收应用模式请求和传递通知
- 与 COMM 模块交换通信模式指令
- 控制 PDUR 中的 I-PDU 路由组开关
-
电源管理
- 与 ECUM 同步 ECU 状态和唤醒源信息
- 接收 WDGM 看门狗状态指示
-
诊断与存储
- 响应 DCM 诊断请求
- 触发 NvM 启动/关闭时的块读写操作
两种仲裁处理机制
BSWM 提供两种仲裁方式:
-
立即操作
在模式请求/指示的上下文中即时响应 -
延迟操作
在 BSWM 主函数中周期性处理

图:BSWM 的仲裁与控制流程示意
工作流程解析
-
请求接收
SW-C 通过 RTE 发送模式切换请求 -
规则评估
BSWM 根据预配置的布尔规则进行决策
(包含 TRUE/FALSE 两种结果对应的操作列表) -
动作执行
- 触发对应操作列表
- 与各基础/应用模块交互
- 通过 RTE 向上层反馈模式指示
所有仲裁逻辑和操作序列均可通过配置实现,无需修改代码。